package tree;

public class InorderTraversalTree {
    public static void main(String[] args) {
        Node root = new Node(5);
        root.left = new Node(3);
        root.right = new Node(3);
        root.left.left = new Node(9);
        root.left.right = new Node(8);
        root.right.left = new Node(8);
        root.right.right = new Node(9);

        print(root);
    }

    /*
    中序遍历二叉树，遍历思路：
        先递归打印左子树的所有数据
        再打印根节点
        再递归打印右子树的所有数据

    1.递归打印左侧节点(左子树)
    2.打印根节点中的值
    3.递归打印右侧节点(右子树)

    最简问题：root是null值
     */
    private static void print(Node root) {
        if (root == null) {
            return;
        }
        print(root.left);
        System.out.println(root.value);
        print(root.right);
    }

    //二叉树的节点类
    static class Node {
        int value;
        Node left;
        Node right;

        Node(int value) {
            this.value = value;
        }
    }
}
